AWS 开战 MongoDB!
据 DB-Engines 此前发布的 2018 年度数据库人气涨幅排名显示,MongoDB 仅次于 PostgreSQL,位列第二,同时还长期占据文档数据库流行度排行榜首。作为在 2013-2014 年间蝉联 DB-Engines DBMS 年度最佳奖的数据库,MongoDB 的受欢迎程度一路上扬,在已经过去的 2018 年更是再次加速,“最受欢迎的 NoSQL 数据库”地位可谓难于撼动。再加之其作为最接近关系型数据库的非关系性数据库,尤为适用于互联网应用,也在业界得到了高度认可。也正是因此,MongoDB 成了大家争相模仿的对象……
1 月 10 日,AWS 官方宣布推出 MongoDB “替代品”DocumentDB,是一款与 MongoDB API 兼容的新数据库产品,矛头直指 MongoDB 此前针对各大云厂商的开源协议更换决议。而 MongoDB 首席执行官 Dev Ittycheria 亦随之发布了一条颇令人玩味的推文,大有回怼 AWS 此举之意:
开始的时候他们忽视你,
然后他们嘲笑你,
继而他们又开始模仿你,
当大家都在模仿你的时候,
你就改变了世界。
伴随着这段几乎与“呛声”无异的发声,大家也嗅到了一丝“硝烟”的味道……
AWS 的「反击」
2018 年 10 月,MongoDB 将其开源许可协议从 GNU AGPLv3 切换至了 Server Side Public License(SSPL),公开“宣战”部分云计算公司,明确指出其在使用 MongoDB 时候未能遵循其开源协议的“流氓行径”,要求托管 MongoDB 实例的云计算公司在付费以及向社区开源其服务代码二选一。AWS 此番动作毫无疑问地被视为一次面向 MongoDB 的“反击”。
地址:https://aws.amazon.com/documentdb/
据 AWS 官方描述,DocumentDB 是一个快速、可扩展、高可用且完全托管的文档数据库,旨在与用户现有的 MongoDB 应用和工具兼容。但事实上,其本质只是 MongoDB 的托管版简易替代品,并未使用到任何 MongoDB 代码。
AWS 宣称,尽管 MongoDB 在很多方面都表现得不错,用户也惯用其来进行存储、检索和半结构化数据管理,但由于大规模设置和管理 MongoDB 集群的复杂性,很难基于其开源平台构建可快速扩展到每秒数 TB 及数十万次读写操作的高可用应用。而 Amazon DocumentDB 作为一款从头开始设计的新产品,将为用户提供大规模运行任务关键型(mission-critical)MongoDB 工作负载时所需的性能、可扩展性和可用性。同时通过模拟 MongoDB 客户端对 MongoDB 服务器的响应,来实现 Apache 2.0 open source MongoDB 3.6 API,允许用户将现有的 MongoDB 驱动程序和工具与 Amazon DocumentDB 一起使用。就相当于构建自己的文档数据库,但使其与 Apache 2.0 open source MongoDB 3.6 API 兼容。
至于费用方面,AWS 官方表示使用 DocumentDB 无需预付费,之后按使用量付费即可。此外,用户还可以通过 AWS 数据库迁移服务(DMS)轻松将本地或 Amazon EC2 上的 MongoDB 数据库免费迁移到 Amazon DocumentDB(六个月),其间几乎不会出现宕机故障。
多遭诟病的 AWS 式开源
和微软一样,近年来的 AWS 一直在对外表示其拥抱开源的决心,2017 年 10 月还与微软合作发布了 Gluon 开源项目,但很多开发者却似乎并不买账,并就其“身为最大的云服务商,却不是最大的开源贡献者”这一点提出了质疑。实时分析软件开发商 Iguaz.io 创始人 Yaron Haviv 曾作出这样的评价,称“AWS 所谓的开源就是装装样子”。
熟悉开源的人都知道,AWS 长期以来一直因为惯于采用最好的开源项目进行再利用和品牌二次打造却又不回馈这些社区而遭到多方指责,这也早已不是什么秘密。
关键就在于 MongoDB 是最早通过更换开源许可来阻止这种情况的公司之一,新许可条件下,企业在想这么操作就必须为商业许可付费。此后,其他开源公司也纷纷效仿。
针对 AWS 的此次反击,Dev Ittycheria 透过 TechCrunch 的报道表达了自己的态度,他表示:
模仿的本质是最真心实意的奉承,所以 AWS 此番操作并不奇怪。不过,开发者们在技术上都足够精明,显然有能力区分实打实的创新和差劲的仿品。MongoDB 一直被模仿从未被超越,未来亦如是。
MongoDB 联合创始人兼 CTO Eliot Horowitz 对此表示赞同,他补充道:
为了给开发者提供他们想要的东西,AWS 已经接收到提供基于两年前的 MongoDB 代码仿制 MongoDB 服务的要求。我们整个公司都专注于一件事——为开发者提供处理数据的最佳方案,并且支持随意运行。我们对这一使命的坚持使得 MongoDB 在一众不断冒出的仿品面前保有其独特地位。
此外,MongoDB 发言人还强调,“DocumentDB 兼容的 MongoDB 3.6 API 距今已有两年历史,错过了大部分最新功能,包括 ACID 事务、全局集群和移动同步等”。
TechCrunch 作者 Frederic Lardinois 分析指出,“诚然 AWS 近来在开源方面活跃了很多,并且在某种程度上也确实为开发人员提供了他们想要的东西(而且并非所有开发人员都对 MongoDB 的托管服务感到满意)。但考虑到 AWS 已确切了解到 MongoDB 更换开原许可的原因,却还是选择绕过了 MongoDB 的新许可,所以此次操作引发争议可谓在所难免,而且很难博得开源社区的青睐。”
被「山寨」的 MongoDB
事实上,很多云厂商在很长一段时间内都在一边利用开源资源牟利,一边拒绝将其修改回馈给社区,在很大程度上破坏了开源的利益平衡,“野蛮”侵占了开源贡献者所创造的价值,这也是包括 MongoDB 在内的一众团队最终选择更换其开源协议的原因,“付费”模式开始逐渐普及。
针对山寨版 MongoDB 非要继续享用免费蛋糕的现象,Mongoing 中文社区联合发起人唐建法在引用 Dev Ittycheria 推文的同时表示,“继 IBM、微软之后,AWS 推出了 MongoDB 山寨版 DocumentDB(支持 30% 左右 MongoDB 功能)——MongoDB,正在缔造数据库新标准”。
相关链接:
https://aws.amazon.com/cn/documentdb/
https://techcrunch.com/2019/01/09/aws-gives-open-source-the-middle-finger/
https://www.zdnet.com/article/aws-launches-fully-managed-document-database-service/
【完】
CSDN 开源开发者交流群
立即扫小编的微信二维码加入吧!
加好友时请备注#开源+公司+职位#
如无备注,不会通过哦
热 文 推 荐
☞ 赶超 Python 与 Java,JavaScript 问鼎最受欢迎的编程语言
☞ 拒绝空谈 AI 设想!手把手教你构建实时、高可用的 AI 调度平台
☞ 刚刚!程序员集体荣获2个冠军,这份2018 IT报告还说这些!
print_r('点个好看吧!');
var_dump('点个好看吧!');
NSLog(@"点个好看吧!");
System.out.println("点个好看吧!");
console.log("点个好看吧!");
print("点个好看吧!");
printf("点个好看吧!\n");
cout << "点个好看吧!" << endl;
Console.WriteLine("点个好看吧!");
fmt.Println("点个好看吧!");
Response.Write("点个好看吧!");
alert("点个好看吧!")
echo "点个好看吧!"